﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using GOAP.Entities;

namespace GOAP
{
    class Planner
    {
        static int maxSteps = 10000;

        void findPlan(World world, Entity agent, int steps)
        {
            if (steps > maxSteps)
            {
                //return null;
            }

            if (goalReached(world, agent))
            {
                //return steps;
            }

            else
            {
                /*
                 * for action in available_actions(world, agent) do
                 *  world',agent' = simulate_action(world, agent, action)
                 *  result = find_plan(world', action', action::steps)
                 *  if result != null then
                 *      return result;
                 *  return null;
                 */
            }
        }

        bool goalReached(World world, Entity agent)
        {
            return true;
        }
    }
}
